In particular, the message exchange model known as “Data Distribution Service” (DDS), standardized by the organization “Object Management Group” (OMG) is known, described, in particular, in the document “Data Distribution Service for Real-Time System”, version 1.2, January 2007. DDS is a middleware that specifies an advanced data exchange technique by means of asynchronous messages, which allows for near real-time data distribution and various levels of quality of service, adapted for on-board systems. DDS is a data-centric system that manages the targeted distribution, i.e., addressing and serializing/de-serializing the data.
The DDS system is applied in a domain, which groups a number of machines, or nodes, distributed on the communication network and sharing common data. The system allows for the publication of data by means of data publishing applications, or publishers, subscription to the data shared by data subscribing applications, or subscribers, the modification of shared data, and the reporting of such modifications to the other machines of the domain. A node of the domain may be a publisher, subscriber, or both at the same time.
Because of the asynchronous publication/subscription operation mode, the various applications of a domain do not need to know each other. The DDS system defines a mechanism for discovering the services provided by the various applications, mechanisms for specifying the behavior during the sending and receiving of messages. The DDS system defines communication entities or objects that provide programming interfaces for message exchange, and offers approximately twenty qualities of service (QoS), allowing for control of the distribution of the data, such as the lifetime of a datum on the network, the lifetime of a datum on a node of the system, the persistence of a datum on the network, the reliability of the data transmission on the communication network, a minimum and/or maximum transmission time. Each entity has a group of associated qualities of service.
The DDS system is designed to offer flexibility and to simplify the interactions of applications over a communication network.
However, the DDS system does not offer the possibility of runtime evolution. In fact, once the DDS system is deployed on a group of applications of a distributed network and run, numerous qualities of service, such as the lifetime of a datum on a node of the system, are fixed, and cannot be modified.
For example, if a new version of DDS with new qualities of service is available, an update of a DDS system already deployed requires the current status or context of the communication objects on each node of the system to be saved before the version currently operating is stopped, followed by the installation of the new version and the insertion of the saved data into the new version. This necessitates the intervention of a developer at the level of the program code of the new version.
It would be useful to have the possibility for an easier development of a DDS-type data distribution system based on asynchronous message exchange in publication/subscription mode.